/* General setup */

* {
  box-sizing: border-box;
}

body {
  margin: 0 auto;
  min-width: 1000px;
  max-width: 1400px;
}

/* Layout */

section {
  float: left;
  width: 50%;
}

aside {
  float: left;
  width: 30%;
}

nav {
  float: left;
  width: 20%;
}

footer {
  clear: both;
}

header,
section,
aside,
nav,
footer {
  padding: 20px;
}

/* header and footer */

header,
footer {
  border-top: 5px solid #a66;
  border-bottom: 5px solid #a66;
}

/* typography stuff */

html {
  font-family: lovatolight, serif;
  font-size: 10px;
}

h1,
h2 {
  font-family: sans-serif;
  letter-spacing: 2px;
}

h1 {
  font-size: 5rem;
  text-align: center;
}

h2 {
  font-size: 3.2rem;
}

section h2+p {
  text-indent: 20px;
}

p,
li {
  font-size: 1.6rem;
  line-height: 1.5;
  letter-spacing: 0.5px;
  word-spacing: 3px;
}

/* Link styling */

a {
  outline: none;
}

a[href*="http"] {
  padding-right: 19px;
  background: url(external-link-52.png) no-repeat 100% 0;
  background-size: 16px 16px;
}

a:link,
a:visited {
  color: #a66;
}

a:focus,
a:hover {
  text-decoration: none;
}

a:active {
  color: transparent;
  text-shadow: 0px 0px 1px #f00,
    0px 0px 2px #f00,
    0px 0px 3px black,
    0px 0px 4px black;
}

/* lists: extra margin top and bottom to make it
always have the same spacing as with paragraphs */

ul,
ol {
  margin: 1.6rem 0;
}

ul {
  list-style-type: square;
}

ol {
  list-style-type: lower-latin;
}

/* nav menu */

nav ul {
  padding-left: 0;
  margin-top: 0.8rem;
}

nav li {
  list-style-type: none;
  margin-bottom: 2rem;
}

nav li a {
  text-decoration: none;
  display: inline-block;
  width: 100%;
  line-height: 3;
  text-align: center;
  font-size: 2.5rem;
  border: 1px solid #a66;
}

nav li a:focus,
nav li a:hover {
  color: white;
  background: #a66;
}

nav li a:active {
  color: white;
  background: black;
}